Since computers were invented, users have been inventing ways to connect them together. Advantages to computer connectivity are numerous and increasing. For example, computers connected to each other can share data and applications as well as resources such as printers and communication connections. One big leap forward in the area of computer connectivity is the Internet, a collection of computers that span the world and share a common communication protocol. Typically, each computer that accesses the resources of the Internet is assigned an internet protocol (IP) address that uniquely identifies that computer and enables information to be transmitted and received from other computers.
Although there are billions of possible IP addresses available, sometimes to is advantageous for groups of computers to share a particular IP address or group of IP addresses. For example, a local area network (LAN) may have a range of defined IP addresses that are assigned to individual computers as needed. To automatically implement this functionality, DHCP has been developed.
A DHCP server assigns an IP address to a requesting computer for the purpose of communicating both locally within a LAN and to other computers across the Internet. For example, a computer such as a laptop typically connects to a particular LAN, requests an IP address from a DHCP server also connected to the LAN and then employs the assigned IP address to communicate locally and across the Internet. Each IP addressed is assigned to a requesting computer for a specific period of time, typically ranging from an hour to several months, although the period may also be set to not expire. The specific period of time a particular IP address is assigned to a device is referred to as a “lease” for the device. The DHCP server does not assign the same IP address to a second computer while a first computer is “leasing” the address. In this manner, a limited number of IP address can be used by a larger number of computers, thus enabling a network to provide connectivity to multiple devices using fewer IP addresses than would otherwise be necessary.
Any particular computer that requests an IP address may have multiple DHCP servers available to satisfy the request. What is wanted and needed is a system and method for assigning a DHCP server to a requesting computer based upon user selected criteria, such as but not limited to, relative locations of available DHCP servers and the requesting computer.